System and method for managing contact center system

ABSTRACT

In a method for managing a contact center, the method includes: receiving, by a processor, a first incoming communication from a communication device associated with a customer; determining, by the processor, the first incoming communication should not be routed to any agents from among a first group of agents; routing, by the processor, the first incoming communication to an electronic device operated by an agent from among a second group of agents; monitoring, by the processor, an outcome of an interaction between the agent and the customer; determining, by the processor, a quality level for the agent in handling the interaction with respect to the first incoming communication; and routing, by the processor, a second incoming communication to the second agent based on the quality level for the agent in handling the interaction with respect to the second incoming communication.

CROSS-REFERENCE TO RELATED APPLICATION(S)

The present application claims priority to and the benefit of U.S.Provisional Patent Application No. 62/440,057, entitled “SYSTEM ANDMETHOD FOR CONTACT CENTER MICRO-EMPLOYMENT”, filed in the United StatesPatent and Trademark Office on Dec. 29, 2016, the entire content ofwhich is incorporated herein by reference.

FIELD

Aspects of embodiments of the present invention relate to a system andmethod for managing a contact center system.

BACKGROUND

In order to remain competitive in the modern commerce system, manybusinesses remain constantly vigilant of evolving consumer demands, andstrive to provide customers with the high quality products and servicesthat they desire. To that end, many businesses employ contact centersthat include automated systems and representatives of the business toprocess transactions and/or service the needs of their customers.

Such contact centers may utilize a number of communication channels toengage with customers, such as social media expressions and exchanges,telephone, email, live web chat, and the like. In many instances, an enduser or customer may be contacted by, or routed to, a live human agentto assist the end user with his or her needs.

In some cases, companies may receive communications from customers viaone or more third party social media platforms. Depending on the volumeof communications from such third party social media platforms, and theresources of the business, it may be difficult to manage responses tocustomers in a timely and effective manner.

The above information discussed in this Background section is only forenhancement of understanding of the background of the describedtechnology and therefore it may contain information that does notconstitute prior art that is already known to a person having ordinaryskill in the art.

SUMMARY

Embodiments of the present invention are directed to systems and methodsfor managing a contact center system.

According to some example embodiments of the present invention, in amethod for managing a contact center, the method includes: receiving, bya processor, a first incoming communication from a communication deviceassociated with a customer; determining, by the processor, the firstincoming communication should not be routed to any agents from among afirst group of agents; routing, by the processor, the first incomingcommunication to an electronic device operated by an agent from among asecond group of agents; monitoring, by the processor, an outcome of aninteraction between the agent and the customer; determining, by theprocessor, a quality level for the agent in handling the interactionwith respect to the first incoming communication; and routing, by theprocessor, a second incoming communication to the second agent based onthe quality level for the agent in handling the interaction with respectto the second incoming communication.

According to some embodiments, the method further includes determining,by the processor, the first incoming communication should not be routedto the any agents from among the first group of agents in response to atrigger event for routing to the second group of agents.

According to some embodiments, the trigger event comprises a number ofincoming communications over a period of time exceeding a predeterminednumber.

According to some embodiments, the trigger event comprises agentavailability for the first group of agents falling below a predeterminedlevel.

According to some embodiments, the method further includes calculating avalue of the interaction based on the quality level.

According to some embodiments, the method further includes determining,by the processor, a compensation amount based on the value of theinteraction.

According to some embodiments, the method further includes determining,by the processor, the quality level based on whether or not an expectedoutcome was achieved.

According to some embodiments, the method further includes determining,by the processor, the quality level based on a sentiment of the customerafter the interaction.

According to some embodiments, the method further includes determining,by the processor, the quality level based on a virality level of theinteraction.

According to some embodiments, the method further includes: ranking, bythe processor, the second group of agents based on the quality level forthe agent to determine a relative ranking between the second group ofagents; and routing, by the processor, subsequent incoming interactionsto the second group of agents based the relative ranking between thesecond group of agents.

According to some example embodiments of the present invention, in asystem for managing a contact center, the system includes: a processor;and a memory coupled to the processor, wherein the memory storesinstructions that, when executed by the processor, cause the processorto: receive a first incoming communication from a communication deviceassociated with a customer; determine the first incoming communicationshould not be routed to any agents from among a first group of agents;route the first incoming communication to an electronic device operatedby an agent from among a second group of agents; monitor an outcome ofan interaction between the agent and the customer; determine a qualitylevel for the agent in handling the interaction with respect to thefirst incoming communication; and route a second incoming communicationto the second agent based on the quality level for the agent in handlingthe interaction with respect to the second incoming communication.

According to some embodiments, the instructions further cause theprocessor to determine the first incoming communication should not berouted to the any agents from among the first group of agents inresponse to a trigger event for routing to the second group of agents.

According to some embodiments, the trigger event comprises a number ofincoming communications over a period of time exceeding a predeterminednumber.

According to some embodiments, the trigger event comprises agentavailability for the first group of agents falling below a predeterminedlevel.

According to some embodiments, the instructions further cause theprocessor to calculate a value of the interaction based on the qualitylevel.

According to some embodiments, the instructions further cause theprocessor to determine a compensation amount based on the value of theinteraction.

According to some embodiments, the instructions further cause theprocessor to determine the quality level based on whether or not anexpected outcome was achieved.

According to some embodiments, the instructions further cause theprocessor to determine the quality level based on a sentiment of thecustomer after the interaction.

According to some embodiments, the instructions further cause theprocessor to: rank the second group of agents based on the quality levelfor the agent to determine a relative ranking between the second groupof agents; and route subsequent incoming interactions to the secondgroup of agents based the relative ranking between the second group ofagents.

According to some example embodiments of the present invention, in asystem for managing a contact center, the system includes: means forreceiving a first incoming communication from a communication deviceassociated with a customer; means for determining the first incomingcommunication should not be routed to any agents from among a firstgroup of agents; means for routing the first incoming communication toan electronic device operated by an agent from among a second group ofagents; means for monitoring an outcome of an interaction between theagent and the customer; means for determining a quality level for theagent in handling the interaction with respect to the first incomingcommunication; and means for routing a second incoming communication tothe second agent based on the quality level for the agent in handlingthe interaction with respect to the second incoming communication.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the present invention, and many of theattendant features and aspects thereof, will become more readilyapparent as the invention becomes better understood by reference to thefollowing detailed description when considered in conjunction with theaccompanying drawings in which like reference symbols indicate likecomponents, wherein:

FIG. 1 is a block diagram of a contact center management systemaccording to some embodiments of the present invention;

FIG. 2 is a block diagram illustrating further details of the contactcenter management system, according to some example embodiments of thepresent invention

FIG. 3 is a flow diagram illustrating a process for managing a contactcenter, according to some example embodiments of the present invention;

FIG. 4A is a block diagram of a computing device according to anembodiment of the present invention;

FIG. 4B is a block diagram of a computing device according to anembodiment of the present invention;

FIG. 4C is a block diagram of a computing device according to anembodiment of the present invention;

FIG. 4D is a block diagram of a computing device according to anembodiment of the present invention; and

FIG. 4E is a block diagram of a network environment including severalcomputing devices according to an embodiment of the present invention.

DETAILED DESCRIPTION

Aspects of the present invention are described with reference to one ormore example embodiments in the following description with reference tothe figures, in which like numerals represent the same or similarelements. While the invention is described in terms of the best mode forachieving the invention's objectives, it will be appreciated by thoseskilled in the art that it is intended to cover alternatives,modifications, and equivalents as may be included within the spirit andscope of the invention as defined by the appended claims and theirequivalents as supported by the following disclosure and drawings.

Generally, modern contact centers are staffed with agents or employeeswho serve as an interface between an organization, such as a company,and outside entities, such as customers. For example, human sales agentsat contact centers may assist customers in making purchasing decisionsand may receive purchase orders from those customers. Similarly, humansupport agents at contact centers may assist customers in solvingproblems with products or services provided by the organization.Interactions between contact center agents and outside entities(customers) may be conducted by speech voice (e.g., telephone calls orvoice over IP or VoIP calls), video (e.g., video conferencing), text(e.g., emails and text chat), or through other media.

In the modern commerce system, social media platforms have become apopular mechanism for customers to engage with businesses. For example,if a customer has complaints about the quality of products or servicesthey receive from a business, the customer may utilize a third partysocial media platform (e.g., Facebook®, Twitter®, Snapchat®, LinkedIn®,YouTube®, etc., although embodiments of the present invention are notlimited thereto) to send a message to, or about, the business. Manythird party social media platforms provide a mechanism (e.g., apublically available application programming interface (API)) to enablebusinesses to receive a stream of social media communications orexpressions that are targeted toward or mention the business.

The contact center system supporting a business may receive the streamof social media communications, and assign or route the communicationsto agents to analyze the social media communications for providingcustomer support, feedback, comments, questions, etc. Such social mediacommunications (also referred to herein as “expressions”) may bedirected, for example, toward the operation, industry, product, customerservice, system user, etc. With large volumes of social expressions,depending on the resources of the contact center, it may be difficult orimpossible to address each social media expression directed by users orcustomers to businesses. Because resources of the contact center arefinite, responding to customers' social media expressions in the orderthat they are received may be less beneficial to businesses andcustomers alike. For example, the earliest-received social mediaexpression may be less important to the interests of the business interms of customer satisfaction, reputation, and profitability, than asocial media expression received later. Embodiments of the presentinvention, provide a system and method to enable reordering andreorganization of social media expressions, in terms of when and whetherthe expressions are routed to agents for handling.

Further, some embodiments of the present invention are directed to amultimedia unified communication and collaboration platform thatprovides businesses with features to personalize outreach to customersto connect and engage. Businesses supported by the multimedia unifiedcommunication and collaboration platforms have the ability to ‘Listen’,‘Publish’, and ‘Explore’ social media hubs. Examples of social mediahubs may include third-party social media platforms such as Facebook®,Twitter®, Snapchat®, LinkedIn®, YouTube®, review sites, web forumthreads, blog comments, product ratings on retail-oriented sites,discussion forums, and the like. Discussion forums may occur around aparticular context such as a video (e.g., YouTube®), picture album(e.g., Pinterest®), or the like. Supported organizations may be able tomonitor and respond to social media hubs using an interface within theunified communication and collaboration platform. In so doing, someembodiments of the present invention provide an additional media typethat allows social media interactions to be routed just like any othermedia type (such as, video chat, messaging, phone call, etc.) in acontact center environment. By integrating social media interactionsinto a contact center, some embodiments of the present invention mayleverage automatic call distribution (ACD), reporting, analytics, andother contact center related features to enhance the experience ofsupported businesses while making the contact center more efficient.

FIG. 1 is a schematic block diagram of a contact center system 100operating as part of a social media expression management system 102 forsupporting a contact center in providing contact center servicesaccording to one example embodiment of the invention. The contact centermay be an in-house facility to a business or enterprise for serving theenterprise in performing the functions of sales and services related tothe products and services available through the enterprise. In anotheraspect, the contact center may be operated by a third-party serviceprovider. According to some embodiments, the contact center may operateas a hybrid system in which some components of the contact center systemare hosted at the contact center premises and other components arehosted remotely (e.g., in a cloud-based environment). The contact centermay be deployed in equipment dedicated to the enterprise or third-partyservice provider, and/or deployed in a remote computing environment suchas, for example, a private or public cloud environment withinfrastructure for supporting multiple contact centers for multipleenterprises. The various components of the contact center system mayalso be distributed across various geographic locations and computingenvironments and not necessarily contained in a single location,computing environment, or even computing device.

According to one example embodiment, the contact center system managesresources (e.g., personnel, computers, and telecommunications equipment)to enable delivery of services via telephone or other communicationmechanisms. Such services may vary depending on the type of contactcenter, and may range from customer service to help desk, emergencyresponse, telemarketing, order taking, and the like.

Customers, potential customers, or other end users (collectivelyreferred to herein as customers, users or end users) desiring to receiveservices from the contact center may initiate inbound communications(e.g., telephony calls) to the contact center via their end user devices108 a-108 c (collectively referenced as 108). Each of the end userdevices 108 may be a communication device conventional in the art, suchas, for example, a telephone, wireless phone, smartphone, personalcomputer, electronic tablet, and/or the like. Users operating the enduser devices 108 may initiate, manage, and respond to telephone calls,emails, chats, text messaging, web-browsing sessions, and othermultimedia transactions.

Inbound and outbound communications from and to the end user devices 108may traverse a telephone, cellular, and/or data communications network110 depending on the type of device that is being used. For example, thecommunications network 110 may include a private or public switchedtelephone network (PSTN), local area network

(LAN), private wide area network (WAN), and/or public wide area networksuch as, for example, the Internet. The communications network 110 mayalso include a wireless carrier network including a code divisionmultiple access (CDMA) network, global system for mobile communications(GSM) network, or any wireless network/technology conventional in theart, including but to limited to 3G, 4G, LTE, and the like.

According to one example embodiment, the contact center system includesa switch/media gateway 112 coupled to the communications network 110 forreceiving and transmitting telephony calls between end users and thecontact center. The switch/media gateway 112 may include a telephonyswitch or communication switch configured to function as a centralswitch for agent level routing within the center. The switch may be ahardware switching system or a soft switch implemented via software. Forexample, the switch 112 may include an automatic call distributor, aprivate branch exchange (PBX), an IP-based software switch, and/or anyother switch with specialized hardware and software configured toreceive Internet-sourced interactions and/or telephone network-sourcedinteractions from a customer, and route those interactions to, forexample, an agent telephony or communication device. In this example,the switch/media gateway establishes a voice path/connection (not shown)between the calling customer and the agent telephony device, byestablishing, for example, a connection between the customer's telephonydevice and the agent telephony device.

According to one exemplary embodiment of the invention, the switch iscoupled to a call controller 118 which may, for example, serve as anadapter or interface between the switch and the remainder of therouting, monitoring, and other communication-handling components of thecontact center.

The call controller 118 may be configured to process PSTN calls, VoIPcalls, and the like. For example, the call controller 118 may beconfigured with computer-telephony integration (CTI) software forinterfacing with the switch/media gateway and contact center equipment.In one embodiment, the call controller 118 may include a sessioninitiation protocol (SIP) server for processing SIP calls. According tosome exemplary embodiments, the call controller 118 may, for example,extract data about the customer interaction such as the caller'stelephone number, often known as the automatic number identification(ANI) number, or the customer's Internet protocol (IP) address, or emailaddress, and communicate with other CC components in processing theinteraction.

According to one exemplary embodiment of the invention, the systemfurther includes an interactive media response (IMR) server 122, whichmay also be referred to as a self-help system, virtual assistant, or thelike. The IMR server 122 may be similar to an interactive voice response(IVR) server, except that the IMR server 122 is not restricted to voice,but may cover a variety of media channels including voice. Taking voiceas an example, however, the IMR server 122 may be configured with an IMRscript for querying customers on their needs. For example, a contactcenter for a bank may tell customers, via the IMR script, to “press 1”if they wish to get an account balance. If this is the case, throughcontinued interaction with the IMR server 122, customers may completeservice without needing to speak with an agent. The IMR server 122 mayalso ask an open ended question such as, for example, “How can I helpyou?” and the customer may speak or otherwise enter a reason forcontacting the contact center. The customer's response may then be usedby a routing server 124 to route the call or communication to anappropriate contact center resource.

If the communication is to be routed to an agent, the call controller118 interacts with the routing server (also referred to as anorchestration server) 124 to find an appropriate agent for processingthe interaction. The selection of an appropriate agent for routing aninbound interaction may be based, for example, on a routing strategyemployed by the routing server 124, and further based on informationabout agent availability, skills, and other routing parameters provided,for example, by a statistics server 132.

In some embodiments, the routing server 124 may query a customerdatabase, which stores information about existing clients, such ascontact information, service level agreement (SLA) requirements, natureof previous customer contacts and actions taken by contact center toresolve any customer issues, and the like. The database may be, forexample, Cassandra or any NoSQL database, and may be stored in a massstorage device 126. The database may also be a SQL database and may bemanaged by any database management system such as, for example, Oracle,IBM DB2, Microsoft SQL server, Microsoft Access, PostgreSQL, MySQL,FoxPro, and SQLite. The routing server 124 may query the customerinformation from the customer database via an ANI or any otherinformation collected by the IMR server 122.

Once an appropriate agent is identified as being available to handle acommunication, a connection may be made between the customer and anagent device 130 a-130 c (collectively referenced as 130) of theidentified agent. Collected information about the customer and/or thecustomer's historical information may also be provided to the agentdevice for aiding the agent in better servicing the communication. Inthis regard, each agent device 130 may include a telephone adapted forregular telephone calls, VoIP calls, and the like. The agent device 130may also include a computer for communicating with one or more serversof the contact center and performing data processing associated withcontact center operations, and for interfacing with customers via voiceand other multimedia communication mechanisms.

According to some embodiments, communications may be routed to anelectronic device 131 a-131 c (collectively referenced as 131) operatedby an agent operating outside of the contact center environment (e.g.,outside of or remote with respect to the premises of the contactcenter). The configuration and structure of the electronic devices 131may enable the same or similar functionality as that of the agentdevices 130. The number of electronic devices 131 and agents operatingthe electronic devices 131 may vary according to the design of thecontact center system 100 and/or the number of communications to berouted to agents, as will be discussed in more detail below. Forexample, as will be discussed in more detail below, in the context ofsocial media expressions to be routed to agents, when there is a surgein volume, incoming social media expressions may be routed tomicro-employee agents operating the electronic devices 131. Suchmicro-employee agents may, for example, be independent contractors orpart-time employees who are capable of handling overflow communicationsby way of the electronic devices 131. According to some embodiments,routing of social media expressions or other communications to agentsoperating the electronic devices 131 may be automatically triggered inresponse to a triggering event, such as the volume of incomingcommunications or social media expressions exceeding a predeterminedthreshold (e.g., during a predetermined period or duration of time). Insome embodiments, routing of communications or social media expressionsmay be triggered by a supervisor agent or contact center employee (e.g.,an agent operating an electronic device 130) transmitting a signal tothe contact center system 100 to initiate routing of communications orsocial media expressions to the electronic devices 131.

Thus, in contrast to other contact center systems, embodiments of thepresent invention may enable the contact center system 100 to handleinteraction volumes that exceed the capabilities of the resources of thecontact center system 100 and/or the agents operating the agent devices130. That is, the distribution of incoming interactions may be made moreefficient and more effective, especially when faced with fluctuatingvolumes of incoming interactions, by leveraging micro-employees who maynot be employed by the contact center on a full-time basis, and insteadare utilized on an as-needed basis. Such micro-employees may also beafforded the freedom and flexibility to accept or reject havinginteractions or communications routed to them for handling, and may alsohave the freedom and flexibility to handle interactions from a varietyof different contact centers utilizing the structure or system ofembodiments of the present invention.

The contact center system may also include a multimedia/social mediaserver 154 for engaging in media interactions other than voiceinteractions with the end user devices 108 and/or web servers 120. Themedia interactions may be related, for example, to email, vmail (voicemail through email), chat, video, text-messaging, web, social media,co-browsing, and the like. In this regard, the multimedia/social mediaserver 154 may take the form of any IP router conventional in the artwith specialized hardware and software for receiving, processing, andforwarding multimedia events.

According to some example embodiments, the multimedia/social mediaserver 154 may be configured to receive a stream of social mediaexpressions, by way of a publicly accessible application programminginterface (API), from one or more third-party or internal social mediaplatforms (e.g., a server operated by or corresponding to the socialmedia platforms). Thus, according to some example embodiments, as willbe described in more detail below, the multimedia/social media server154 may operate to facilitate communications between the contact centersystem (or agents of the contact center system) and customers who areengaged with third-party or internal social media platforms. Accordingto some embodiments, the multimedia/social media server 154 may includeor be connected to a memory or buffer for storing social mediaexpressions or communications (and/or information about social mediaexpressions or communications, such as user profile information,communication content, user interaction history, and the like).

The web servers 120 may include, for example, social interaction sitehosts for a variety of known social interaction sites to which an enduser may subscribe, such as, for example, Facebook®, Twitter®, and thelike. In this regard, although in the embodiment of FIG. 1 the webservers 120 are depicted as being part of the contact center system, theweb servers may also be provided by third parties and/or maintainedoutside of the contact center premise. The web servers may also provideweb pages for the enterprise that is being supported by the contactcenter. End users may browse the web pages and get information about theenterprise's products and services. The web pages may also provide amechanism for contacting the contact center, via, for example, web chat,voice call, email, web real time communication (WebRTC), or the like.

According to one exemplary embodiment of the invention, in addition toreal-time interactions, deferrable (also referred to as back-office oroffline) interactions/activities may also be routed to the contactcenter agents. Such deferrable activities may include, for example,responding to emails, responding to letters, attending trainingseminars, or any other activity that does not entail real timecommunication with a customer. In this regard, an interaction (iXn)server 156 interacts with the routing server 124 for selecting anappropriate agent to handle the activity. Once assigned to an agent, anactivity may be pushed to the agent, or may appear in the agent'sworkbin 136 a-136 c (collectively referenced as 136) as a task to becompleted by the agent. The agent's workbin may be implemented via anydata structure conventional in the art, such as, for example, a linkedlist, array, and/or the like. The workbin 136 may be maintained, forexample, in buffer memory of each agent device 130.

According to one exemplary embodiment of the invention, the mass storagedevice(s) 126 may store one or more databases relating to agent data(e.g., agent profiles, schedules, etc.), customer data (e.g., customerprofiles), interaction data (e.g., details of each interaction with acustomer, including reason for the interaction, disposition data, timeon hold, handle time, etc.), and the like. According to one embodiment,some of the data (e.g., customer profile data) may be maintained in acustomer relations management (CRM) database hosted in the mass storagedevice 126 or elsewhere. The mass storage device may take form of a harddisk or disk array as is conventional in the art.

According to some embodiments, the contact center system may include auniversal contact server (UCS) 127, configured to retrieve informationstored in the CRM database and direct information to be stored in theCRM database. The UCS 127 may also be configured to facilitatemaintaining a history of customers' preferences and interaction history,and to capture and store data regarding comments from agents, customercommunication history, and the like.

The contact center system may also include a reporting server 134configured to generate reports from data aggregated by the statisticsserver 132. Such reports may include near real-time reports orhistorical reports concerning the state of resources, such as, forexample, average waiting time, abandonment rate, agent occupancy, andthe like. The reports may be generated automatically or in response tospecific requests from a requestor (e.g., agent/administrator, contactcenter application, and/or the like).

The various servers of FIG. 1 may each include one or more processorsexecuting computer program instructions and interacting with othersystem components for performing the various functionalities describedherein. The computer program instructions are stored in a memoryimplemented using a standard memory device, such as, for example, arandom access memory (RAM). The computer program instructions may alsobe stored in other non-transitory computer readable media such as, forexample, a CD-ROM, flash drive, or the like. Also, although thefunctionality of each of the servers is described as being provided bythe particular server, a person of skill in the art should recognizethat the functionality of various servers may be combined or integratedinto a single server, or the functionality of a particular server may bedistributed across one or more other servers without departing from thescope of the embodiments of the present invention.

In the various embodiments, the terms “interaction” and “communication”are used interchangeably, and generally refer to any real-time andnon-real time interaction that uses any communication channel including,without limitation, social media expressions or communications,telephony calls (PSTN or VoIP calls), emails, vmails (voice mail throughemail), video, chat, screen-sharing, text messages, social mediamessages, web real-time communication (e.g., WebRTC calls), and thelike.

FIG. 2 is a block diagram illustrating further details of the socialmedia expression management system 102, according to some exampleembodiments of the present invention.

As illustrated in FIG. 2, the contact center system 100, operating aspart of the social media expression management system 102, may be inelectronic communication with one or more third-party (or internal)social media platforms (also referred to as social channels, socialmedia hubs, or social networks) 200 a-200 c (the number of social mediaplatforms is not limited to the number illustrated in FIG. 2, and mayinclude any suitable number and variety of social media platformsaccording to the design of the social media expression management system102). Although embodiments of the present invention are described withthe multimedia/social media server 154 controlling the social mediaexpression reorganization and routing to agents, embodiments of thepresent invention are not limited thereto, and various aspects orfeatures may be executed by other elements or components of the contactcenter system 100.

As illustrated in FIG. 2, the contact center system 100 and/or themultimedia/social media server 154 is configured to receive expressionstreams (also referred to as communication or data streams) 202 a-202 cthrough the social media platforms 200 a-200 c, respectively, forexample, by way of a publicly available application programminginterface (API). Each social media platform 200 a-200 c may have its ownunique mechanism or protocol to allow the contact center system 100and/or the multimedia/social media server 154 to “listen” to (e.g.,subscribe for and receive) social media expressions that relate to thebusiness or organization supported by the contact center system 100. Forexample, if a user of one of the social media platforms 200 a-200 cmentions the organization supported by the contact center system 100 (byincluding a screen name or address associated with the organization inthe social media expression) or a product or service provided by theorganization, the social media platform may identify the social mediaexpression as being relevant to the organization by matching asubscription query provided through the API and transmit the socialmedia expression to the contact center system 100 and/or themultimedia/social media server 154 as part of the expression stream. Theparticular mechanism or protocol for identifying and transmitting socialmedia expressions from a social media platform to the contact centersystem 100 may vary according to the design and function of the socialmedia platform and/or the contact center system 100.

In some embodiments, the contact center system 100 and/or themultimedia/social media server 154 communicates a set of specificationsto each of the social media platforms 200 a-200 c that cause theplatforms to trigger and send a matching social expression to thesystem. The specification may include, for example, a set of keywordsthat are associated with the organization or its products and services.This may be referred to as passive “listening” by the contact centersystem 100 and/or the multimedia/social media server 154. However,embodiments of the present invention are not limited thereto, and thecontact center system 100 and/or the multimedia/social media server 154may actively “listen” for social expressions by actively crawling theInternet (e.g., the one or more media platforms 200 a-200 b) byutilizing Internet bots, for example, to systematically search theInternet for information of interest. Any results are returned to thelistener 204.

In some examples, the expression streams 202 a-202 c communicated to thelistener 204 include not only the text of the message containing thephrase of interest, but also include information regarding the time ofthe expression (e.g., the time stamp of the social media post), locationof the expression (e.g., state/city/zip code that the expressionoriginated from), author of the expression (e.g., name, username, socialhandle, gender, age or age range, number of followers, number of peoplebeing followed by the user (herein referred to as “following”), date oflast post, frequency of posts, date of membership, etc.), and/or thelike.

In some embodiments, the listener 204 is tuned to the informationidentified by the specifications, and examines the expression streams202 a-202 c received from the social media platforms 200 a-200 c forvalidity (e.g., relevancy) and distributes the desired informationgleaned from the expression streams 202 a-202 c to other components(e.g., the analyzer 208) of the contact center system 100 and/or themultimedia/social media server 154 for further analysis. In determiningthe validity of the social expression, the listener 204 may parse thetext of the incoming expression streams 202 a-202 c to determine theirrelevancy to notions of interest.

For example, an organization supported by the contact center system 100may be interested in receiving expression streams pertaining to DeltaAirlines®, and thus may have identified “delta” as a phrase of interest.A social media post (e.g., a tweet, post, or a user comment) containingthe phrase “delta” may trigger a corresponding one of social mediaplatforms 200 a-200 c to send the social expression containing thephrase “delta” to the listener 204. However, “delta” may be used inspeech related to the military, mathematics, kitchen sinks, etc., noneof which may be related to Delta Airlines. As such, the listener 204 maythen parse the text of the corresponding expression to determine itsrelevancy to Delta Airlines. In so doing, the listener 204 may searchthe expression text to find associated terms, such as “airline”,“airport”, “flight”, “check-in”, “missed”, “luggage”, “booking”, etc. Ifany of the associated terms are found, the listener 204 may determinethat the social expression is valid (e.g., is relevant or a good match)and add the expression stream to the streaming queue (i.e., a firstqueue) 206 for later processing. If none of the associated terms arefound, the listener 204 may determine that the social expression is notvalid (e.g., not relevant or a poor match) and simply ignore or discardit (i.e., not place it in the streaming queue 206). The list ofassociated terms for each (or each set of) phrases of interest may bedefined by the supported organization and may be stored at the contactcenter system 100 and/or the multimedia/social media server 154. Whilethe validity analysis is described as being performed by the listener204, embodiments of the present invention are not limited thereto, andthe analysis may instead be performed by the analyzer 208. In suchembodiments, the listener 204 may simply place all incoming expressionstreams 202 a-202 c in the streaming queue 204 without any filtering oranalysis.

According to some embodiments, the analyzer 208 includes a valuator 210and a filter (e.g., drop filter) 212 to assign valuations to and filterthe expressions stored in the streaming queue 204. The analyzer 208 mayanalyze the expressions in the streaming queue 204 on a first-in,first-out (FIFO) basis. The valuator 210 processes each of theexpressions for valuation. Valuation may be deemed as the act ofaugmenting the core properties of a single social expression derivedfrom the core properties themselves. The augmenting data is also calleda “data derivative”. According to some embodiments, the valuator 210performs different types of valuations, including sentiment scoring,impression scoring, attentiveness, and/or the like.

In some embodiments, the valuator 210 performs sentiment scoring byparsing the text of the social expression and sending it to an internalor third-party service that determines the sentiment score of the textbased on based on a sentiment formula or by utilizing a machine learningsystem (e.g., deep-learning system) trained on scoring sentiment oftext. In some examples, sentiment scoring of a particular expression maybe further based on geolocation of the expression, as words may carrydifferent meanings in different geographical locations. For example, asocial expression, such as a tirade, may be scored differently dependingon whether it originates in the Northeast or South of the United States.The sentiment formula or deep-learning system may return a set of valuesthat will provide additional values (or data derivatives) to theoriginal social expression.

As such, the valuator 210 may apply processing to determine new data toaugment the original social expression with; however, the source valuescome directly from the social expression itself.

In some embodiments, the valuator 210 performs impression scoring usinga formula to determine the number of impressions. In some examples, oneor more of the social media platforms 200 a-200 c provide the number offollowers a user (i.e., expression author) has as well as the number ofpeople the user is following. In addition, these platforms 200 may alsoprovide the date when the user joined the platform and the user'sactivity or total count of expressions published (e.g., posted). In someembodiments, an impression valuation determines the number ofimpressions a user has over a set period of time. For example, theimpression valuation may divide the number of total expressions by thenumber of weeks the user has been a member of the social media platform200. This may provide an estimate of the number of expressions a usermakes every week. Then this number may be multiplied by the number offollowers the user has to arrive at the impression score or impressionvaluation.

The valuator 210 may perform other types of valuations including:followers to following ratio, in which expressions from users withhigh-following and low-followers are scored lower than those from usershaving low-following and high-followers; profile engagement score, inwhich expressions from users with no profile picture, no basicinformation, and long-time membership are scored differently thanexpressions from new users with the same or similar levels ofuncompleted biographical data; originality score, which compares, forexample, the number of retweets with the number of original posts by theuser; attentiveness score, which gauges, for example, the responsetimeliness between an original expression and a response to theexpression (also known as response distance). In an example, a user whoresponds to a social expression by replying or by sharing (e.g.,retweet) within 5 minutes would be given a higher valuation than onethat does so in 24 hours. However, embodiments of the present inventionare not limited thereto, and the valuator 210 may generate one or morevaluations that are derived from the above scores. For example, aparticular valuation score may be based on a combination of thefollower/following ratio valuation with the attentiveness and profileengagement valuations.

According to some embodiments, the valuator 210 augments the originalsocial expression by adding each of the calculated valuation scores as aderivative property of the original social expression. These derivativeproperties may be utilized by the contact center system 100 and/or themultimedia/social media server 154 to aid in future decision-makingprocesses.

In some embodiments, the filter 212 analyzes the expressions in thestreaming queue 204 to identify those expressions that are worthfollowing up on by routing to an agent of the contact center system 100,and discarding (e.g., ignoring) the rest. In other words, the filter 212may be utilized as a drop filter capable of identifying and discardingthe least valuable expressions in the streaming queue 204, and pushingforward the remaining expressions for further processing (e.g., forrouting to an available agent). In some embodiments, the filter 212performs raw value comparisons between the valuation scores andcorresponding threshold values, and discards those expressions whosevaluation scores fall below the corresponding thresholds. For example,the filter 212 may discard (e.g., drop or ignore) those expressionswhose follower/following ratio is less than a preset threshold. In someembodiments, the filter 212 may compare various valuation scores of agiven expression in determining whether or not to discard theexpression. For example, the filter 212 may discard an expression whoseprofile engagement score is greater than the impressions score. However,embodiments of the filter 212 are not limited to raw value comparisons,and in some embodiments, the filter 212 utilizes machine learning (e.g.,a deep-learning system) that has been trained to identify and discardthe least valuable expressions. According to some embodiments, thefilter 212 may also determine not to apply the drop filter if the numberof expressions in the waiting queue 214 has not reached a threshold suchas a ratio of the number of expressions to the number of agentsavailable to engage with expressions. The analyzer 208 places anyexpressions from the streaming queue 204, which were not discarded bythe filter 212, in a waiting queue (i.e., a second queue) 214 forfurther processing and routing.

According to some embodiments, the sorter 216 prioritizes theexpressions queued in the waiting queue 214 based on importance (e.g.,business value). As the volume of incoming social expressions may behigh, reorganizing the order of incoming social media expressionsaccording to the unique business interests of the supported organizationbenefit it, by enabling the highest priority social media expressions tobe addressed before lower priority social media expressions.

The sorter 216 may, at regular intervals (e.g., every 30 minutes), sortthe expressions in the waiting queue according to a deep-learning systemthat has been taught to determine the importance of expressions throughagent choice. A more detailed description of this sorting machinelearning system is provided in U.S. patent application Ser. No.15/815,660, entitled “SYSTEM AND METHOD FOR MANAGING CONTACT CENTERSYSTEM”, filed in the United States Patent and Trademark Office on Nov.16, 2017, the entire content of which is incorporated herein byreference.

After reorganizing the social media expressions according to theirrelative importance or priority according to the business interests ofthe contact center, the contact center system 100 may then route thesocial media expressions to contact center agent devices according tothe relative ranking or order of the social media expressions. Thus,rather than routing social media expressions to agents according to thetime that such social media expressions are received (e.g., first-in,first-out), the contact center system 100 may enable routing andhandling of the social media expressions according to business interestpriority. Ranking of incoming social media expressions according totheir relative priority or importance to business interests may enablethe contact center to reduce or maintain relatively low overhead (e.g.,by employing fewer agents) while ensuring that the highest prioritysocial media expressions are routed to an agent for handling (e.g.,responding to customer complaints and questions, fulfilling customerrequests, etc.).

For example, in the context of a contact center that supports abusiness, the business may wish to ensure that high value or importantcustomers are happy and that any of their concerns or questions areanswered by an agent. In such instances, the business may be willing toaccept that certain customers' concerns or questions may not be routedto an agent for handling. As another non-limiting example, if thecontact center supports an organization such as a charity, politicalorganization, or fundraising entity, the organization may wish to ensurethat larger donors' communications are prioritized over those of smallerdonors.

According to some examples, when routing expressions in the waitingqueue 214 to available agents, the contact center system 100 may matchthe reorganized expressions to a best available agent. In so doing, thecontact center system 100 may reserve a particular expression for a bestfit agent who is currently fully occupied with other tasks but who isexpected to become available within a preset period of time (e.g.,within 5 minutes). The contact center system 100 may also employ asystem of checks to ensure that the reservation isn't kept perpetuallyshould the estimated availability of the agent expire.

According to some example embodiments, when an expression 218 from thewaiting queue 214 is routed to an agent device 130 or 131 for handlingby an agent, additional contextual information as well as one or moresuggested responses may also be transmitted for display along with theexpression 218 itself. For example, according to some embodiments,information about the user or customer (e.g., user profile information,interaction history, purchase history, demographic information, etc.)who transmitted or created the social media expression may betransmitted for display along with the expression 218. Contextual datamay also include information reflecting the general state of socialexpressions in aggregate, such as the number of expressions this hourcompared to the previous hour as a measure of traffic or virality,number of incoming expressions for past days at this hour, number ofexpressions in the last 4 hours that are similar such as using aparticular hashtag, number of expressions this hour from a particulartime zone or region, and/or the like.

According to some embodiments, the social biogenic server 220 provides asocial biogenic deep-learning system to assist agents in performingtheir tasks using context and suggested responses.

In some embodiments, the social biogenic server 220 utilizes a pluralityof models (e.g., statistical models), each of which correlates aplurality of expression feature vectors related to an expression with aplurality of candidate textual blocks that form a part of a suggestedresponse. By utilizing the model and a machine learning algorithm, suchas one of various known regression or back-propagation algorithms, thesocial biogenic server 220 formulates one or more suggested responses toaddress a given expression. The one or more suggested responses arepresented on the display of an agent device 130 or 131 to which anexpression is routed. An agent may then choose to use one of thesuggested responses to respond to the expression, may choose to edit asuggested response in an appropriate manner before publishing it orsending it out, or may ignore all suggested responses and draft anappropriate response based on the expression and the contextual datapresented on the display. The approach adopted by the agent as well asthe final text of the submitted/published response is recorded by thesocial biogenic server 220 to be later used for machine learningtraining purposes.

In some embodiments, the plurality of models correspond to neuralnetworks and/or deep neural networks (a deep neural network being aneural network that has more than one hidden layer, for use withdeep-learning techniques), and the process of generating the models mayinvolve training the deep neural networks using training data and analgorithm, such as a back-propagation algorithm. In this regard, eachmodel is invoked to generate a section of the suggested response. Thesection may be a greeting or opening section, a main body of thesuggested response, or a closing section (e.g., goodbye).

Each of the models may include a set of weights for each of theparameters of a linear regression model, or the models may include a setof weights for connections between the neurons of a trained neuralnetwork. In some embodiments, a particular expression feature vector issupplied to each model as a value to the input layer of the neuralnetwork, and the value (or a set of intermediate values) is forwardpropagated through the neural network to generate an output, where theoutput corresponds to a formulation of a section of the suggestedresponse, given the particular input expression feature vector.

According to some examples, each expression feature vector includes oneor more of a gender of the user, a geolocation of the communication, atime of the communication , a text of the communication, an originalityof the communication (e.g., retweet vs. original tweet), a sentimentscore of the communication, a response distance of the communicationfrom last response to the social expression, a known past activity ofthe user, an impression valuation rating of the user, and biographicaldata of the user.

In analyzing the expressions and the associated data (e.g., derivatedata), the social biogenic server 220 may gain certain insights from thedata. Some examples of these insights may be expressed as “males in theSouth say thank you more than females in the North”; “‘cya’ is used as agoodbye term in the West for users between the ages of (x) and (y),while ‘ciao’ is used in Europe between the ages of (x) and (y)”;“females tend to say thank you more than males overall”; “males in theSouth say thank you more than females in the North”; “people whoretweeted posts about cats also expressed themselves about Star Wars anddid so between the hours of 8 am and 10 am in the PST time zone”;“followers of AwesomeUser tended to be involved with soccer”; “users whoexpressed themselves about vitamins tended to be followed by users whoexpressed themselves in the Northeast after business hours”; “when#LoveChocolate was provided in an original expression, it has beenlearned that female users above the age of 30 are highly expected torespond within 15 minutes while any age below the age of 20 may respondmore weakly and after 24 hours; etc.

Armed with a breadth of hidden knowledge discovered through the learningprocess of the social biogenic server 220, the contact center system 100may utilize that knowledge to assist the agent in how to respond to agiven social expression. For example, in response to an expression from“AwesomeUser”, the social biogenic server 220 may formulate a suggestedresponse that recites: “Howdy AwesomeUser. We love teamwork—just like insoccer. We can help your problem quickly. Glad you reached out. Cya.”The social biogenic server 220 may arrive at the formulation based onthe following insights: 1) the system may not have learned AwesomeUser'snatural greeting, but

AwesomeUser lives in a region of the world where the most commongreeting by that user's age group is ‘Howdy’; 2) ‘Cya’ may be chosenbecause AwesomeUser always uses that term in his expressions even thoughhis region doesn't support that term as a goodbye; and 3) AwesomeUserdoesn't express about soccer directly, but the next best statement toreference is that of the followers that AwesomeUser tends to attract,and soccer was strongly associated in other learning samples with thetext/content that AwesomeUser tends to express about.

Accordingly, the social biogenic server 220 according to someembodiments enables a blended agent/artificial intelligence (A.I.)environment by which social expressions may be addressed in anappropriate and expedient manner.

Leveraging analytics can allow the contact center system 100 to learnmore about the supported organization's customer base. For example, datamining may be used in a scenario where the social media accounts of thecustomer base are monitored. Data mining may be used to “listen” forparticular words and aggregate these users which are using the same set.The words may be defined by the contact center system 100 or thesupported organization. For example, “Yes on 4000” may illuminateconstituent interest in political movements. The phrase “I bought” maybe an example of consumerism interests. The hashtag‘#SuperBowlCommercial’ may be an example of message saturation andvirility.

Data may be obtained from this set to learn about the base of customers.For example, constituents most vocal for “Yes on 4000” may make up 80%of interest that are not even geographically expressing themselves inthe affected region. Of those, 75% discuss matters that are against theamendment's goals. Further, with the phrase “I bought”, the contactcenter system 100 may identify that 30% of the expressions wereaffiliated with baby food, 20% with houses, and 5% with farms. Regardingthe hashtag ‘#SuperBowlCommercial’, the hashtag may show a spike thatstarted in Oregon and North Dakota and was made up of 80% females (notmales). It may be further observed that the particular commercialcontinued to resonate with females through to October while otherhashtags died off within the first week of the conclusion of the SuperBowl event.

In an example, the behavior of the customers may be examined over aperiod of time. Expressions may expose more data than just raw values ofa single tweet/post/like. It may be discovered that the regionalgeography of these expressions are generally negative or generallypositive in sentiment. It may be found that the ‘#SuperBowlCommercial’hashtag not only resonated with females, but the aggregate words havingaffinity with those posts also indicated what other values theypossess—thus it may be deduced that this commercial (supposedly aboutthe cloud) resonated with the portrayal of Rosie the Riveter in anunexpected way—e.g., the commercial inspired business owners to care fortheir employees.

The phrase “I bought” may provide insight that people who purchasedparticular identified items were doing so in a specific band of time.For example, yogurt @3 am has affinity with pregnancy, while buyingfarms has a strong affinity with life insurance and new Cadillacs andregionally @8 pm in the east and @1 pm in the West.

Every expression may be viewed as a sample of time, space, emotion, andthought—not to mention explicit connections to other people andwebsites. Whom a person follows and the aggregate people that follow theperson are telling as human behavioral samples continue to assemble asocial biogenic profile.

Services may be provided back to these customers based on this data. Ingeneral, behavioral analysis may be gleaned from studying the socialexpressions of customers and shared with other clients. For example,Client 1 may discover that a given Twitter user lives at a givenaddress. This information may not be shared with Clients 2-100 directly,but may be generalized for sharing in the following example: “Within thegeolocation 11:22, 30% of males express themselves about exercisebetween 9 am and 10 am. These same males have an affinity with Jeeps andinvestments. This behavior has shifted from a year ago when this regionhad 25% of males expressing themselves about the same things and between8 am and 9 am.”

The aggregate information from all of the clients may thus begeneralized and then the derivatives of the data sold to all of theclients for a leveraged return.

Herein, the term “social biogenics” may refer to any form of behavioralanalysis through the study of social expressions, while “dataderivatives” may refer to generating inferenced data from existing data.An example of data derivatives includes a search performed of data, rawdata extracted, and the extracted raw data is then used for a secondarysearch. Patterns may be analyzed in the social data in order to see how,for example, a person from the Midwest United States behaves differentlythan a person from that same demographic in the Southern United States.The social biogenics include a behavioral map from patterns within allof the data which provide insights into group personas and individualpersonas.

In some embodiments, search requirements A, B, and C may be used in asearch of all social expressions for a customer base. A large number ofresults may be returned including handles, geolocation, the actual textof the expression, relational information such as a parentlike/retweet/+1/comment, and, additionally, information on the userincluding handle, followers, and gender.

The information may be analyzed by word and phrase usage. Then, groupingmay be performed by geolocation and gender. A new body of data may bederived from the initial set. The data may then be aggregated by time togain insights on when people feel the need to express themselves aboutsuch things. For example, in the restaurant industry, people may be moreinclined to provide feedback on a meal around common meal-time hours. Inthe travel industry, people may be more inclined to provide feedbackaround Federal holidays or religious holidays.

Derivative relationships may be created from this information to findconnections between products and user demographics, such as, forexample, soccer moms in the Midwest enjoy discussions of science fictionwhile soccer moms in the South enjoy discussions of musicals.

According to some embodiments of the present invention, social mediaplatforms or expressions may be utilized by the contact center system100 to conduct an outgoing communication campaign (e.g., a dialingcampaign) for proactively initiating electronic communication with usersvia a social media platform. Traditional dialing campaigns utilizecommunications that may be definite and private, like telephone calls. Alist of phone numbers may be dialed and open communications (e.g., whenthe end user answers the phone) are routed or connected to an agent.Telephony communications have a beginning and an end, existing in a“definite” or finite period of time. By contrast, social mediaexpressions in the context of a contact center system, the conversationor communication does not end, in the sense that follow-upcommunications or social media expressions may continue indefinitely.Thus, in the context of social media expressions, communications operateas an ongoing thread for which the contact center system 100 may investongoing resources (e.g., in the form of a Listener) to monitor forsubsequent handling of any future social media expressions.

Thus, in contrast to traditional telephony outgoing dialing campaigns,outgoing social media expression campaigns are indefinite in duration.Additionally, depending on the nature of the corresponding social mediaplatform, social media expression campaigns may be publicly availablefor the general public to view and respond with their own social mediaexpressions. For example, with a public social media expression, manysocial media platforms may allow participation or interaction with thesocial media expression indefinitely. The contact center system 100 maynot be enabled to “end” a communication session, depending on the natureof the social media platform. On certain social media platforms, it maybe possible to re-post (e.g., “retweet”), like, share, or reply to asocial media expression many months or even years after the initialsocial media expression. At any given time, a particular social mediaexpression may explode with increased “virality,” providing anotherbenefit to the user.

The indefinite duration and nature of social media expressioninteractions allows for responses at any point in time, such as days,weeks, months, or years after initiation. When a response to a socialmedia expression from a contact center system is generated by a user orcustomer using the corresponding social media platform, embodiments ofthe present invention may enable the response social media expression tobe routed (e.g., by way of the social media server 154 and/or the switch112) to a contact center agent device for handling by the contact centeragent.

Because social media expressions generated by the contact center system100, or agents operating electronic devices as part of the contactcenter system 100, may be available for the general public to view andrespond to, exposure to such social media expressions may beexponentially greater than traditional dialing campaigns that areprivate and directed to a single person during a finite period of time.For example, businesses often invest tremendous resources to reassurecustomers that they have high quality customer service. In the contextof a social media expression interaction, responding quickly tocustomers' social media expressions demonstrates the business has highquality customer service.

Embodiments of the present invention provide a mechanism to enablebusinesses to initiate outgoing communications, including with socialmedia expressions. To conduct a communication campaign using socialmedia expressions, a list of “handles” or customer screen names orusernames may be utilized. An outbound dialer solution (e.g., operatingas part of the contact center system 100 and/or the social media server154) may be configured to facilitate using a variety of communicationchannels, such as telephony, VoIP, SMS text messaging, email, and socialmedia platforms.

According to some example embodiments, when communication is initiatedby way of a social media expression on a social media platform, suchcommunication may be initiated automatically by the contact centersystem 100 and/or the social media server 154. For example, according tosome embodiments, the social media server 154 and/or the contact centersystem 100 may include a communication initiator 240 configured toinitiate outgoing social media expression communications through thesocial media platforms 200. According to some example embodiments, thecommunication initiator 240 may receive an instruction (e.g., from anagent device 130 or 131 operated by a contact center agent) to initiatean outgoing communication campaign in which a plurality of outgoingcommunications are to be transmitted to a plurality of user or customerelectronic devices through a variety of communication channels orplatforms (e.g., telephony, VoIP, cellular telephone, SMS text message,email, chat, social media platform, Internet message board or forum,etc.). According to some example embodiments, the communicationinitiator 240 may receive information about communication messagecontent to be transmitted as part of the outgoing communicationcampaign. For example, according to some embodiments, the communicationinitiator 240 may receive information or data indicating a subjectmatter or message to be conveyed.

In some embodiments, the communication initiator 240 and/or othercomponents of the contact center system 100, such as the socialbiogenics server 220, may be configured to utilize the information aboutthe communication message content to automatically generate a uniquemessage tailored for each individual recipient user of the communicationcampaign. For example, according to some embodiments, the contact centersystem 100 may be configured to automatically generate a text-basedsocial media expression that includes a unique URL or Internet link foreach user that enables the contact center system 100 to identify howlong it takes a user to select the link and record how many users clickthe link. In some embodiments, the contact center system 100 may beconfigured to automatically and uniquely tailor the substance of theoutgoing message based on information known about the recipient users ofthe communication message. For example, using the social biogenicsserver 220, the contact center system 100 may be configured toautomatically generate a message conveying the information about thecommunication message for each user as discussed above.

The social media server 154 and/or the contact center system 100 mayfurther include a multi-channel scheduler 250. According to someembodiments, the contact center system 100, in conjunction with themulti-channel scheduler 250 may be configured to retrieve a list ofcontacts for initiating outgoing communications, and automatically sortthe list of contacts into various groups or buckets according tocommunication time and communication channel. For example, variouscommunication channels may have certain throughput limitations thatlimit the number of outgoing communications that can be initiated duringcertain time periods or within a given period of time. In the case ofsocial media platforms, various social media platforms may havelimitations on the number of social media expressions that can begenerated or sent within a predetermined duration of time. In the caseof telephony communications or other communication channels, there mayexist statutory or regulatory limitations on the times that users can becontacted (e.g., no phone calls after 9:00 PM in a particular geographicregion, etc.).

At the same time, certain users' preferred mechanism or channel forreceiving communications may be known and stored as part of the users'profile data by the contact center system 100. For example, certainusers may provide the contact center system 100 information aboutvarious communication channels though which they may be contacted, andalso preferences for which communication channels they prefer to becontacted, including which time of day or day of the week they prefer tobe contacted for various communication channels.

Given the throughput limitations for various communication channels, theorganization operating the contact center system 100 may additionallywish to prioritize outgoing communications to more valuable users overless valuable users. For example, according to some embodiments, as willbe described in more detail below with respect to FIGS. 3 and 4, thecontact center system 100 may be configured to rank users according totheir respective value to a business interest of the organizationoperating the contact center system 100, and initiate outgoingcommunications to users according to their respective rank and preferredcommunication channel. Once the maximum number of available slots areassigned for a particular communication channel during a particular timeperiod, according to the ranking or value of the users, the contactcenter system 100 may then assign lower value or lower ranked users toless preferred time slots and/or less preferred communication channels.

Once a social media expression has been created and transmitted to thecorresponding user or customer by way of an appropriate social mediaplatform, the social media server 154 may track or listen for anyresponses and route the response to an appropriate contact center agentelectronic device for handling.

According to some embodiments, the initial outgoing social mediaexpression may be publicly accessible or may be private (e.g., through amessaging account associated with the user's social media handle). Thedialing campaign solution system may then be configured to trackstatistics of virality from the campaign, for example, by the socialmedia server 154 listening to, and measuring the volume and content of,any follow-up or subsequent social media expressions that reference theinitial social media expression or any related social media expressions.Thus, the “rippling effect” or viral impact of a communication campaignmay be measured. For example, in addition to tracking social mediaexpressions exchanged between an agent or agents of the contact centersystem and the target user or customer, the contact center system 100may also monitor or track the number of times those social mediaexpressions are shared or responded to by other users.

As discussed above, a first group of agents 230 operating the electronicdevices 130 may be employees (e.g., full-time employees) of the contactcenter operating the contact center system 100. Additionally, a secondgroup of agents 232, different from the first group of agents 230,operating the electronic devices 131 may operate as micro-employees orpart-time agents for handling interactions and communications nothandled by the first group of agents 230. Thus, the routing ordistribution of incoming communications or media to agents may beimproved according to embodiments of the present invention by leveragingmicro-employees depending on the volume of incoming communications andthe resources of the contact center system (e.g., the availability ofthe agents operating the agent devices 130). For example, according tosome embodiments, incoming interactions may be routed to the secondgroup of agents 232 instead of the first group of agents 230, dependingon one or more triggering events occurs to cause incoming interactionsto be routed to the second group of agents 232. In some instances, thetriggering events may include the incoming interactions being in aparticular communication channel (e.g., social media expressions),and/or a volume of the incoming interactions during a particular periodof time (or duration of time) exceeding a predetermined thresholdvolume, and/or availability of agents in the first group of agents 230falling below a predetermined threshold level, and/or an instruction orsignal from an agent of the contact center.

During peak time periods or when there is a surge in volume of incomingcommunications or interactions, embodiments of the present invention mayenable overflow interactions to be handled by the second group of agents232 instead of the first group of agents 230.

The second group of agents 232 may be geographically dispersed andremote with respect to the premises of the contact center, and may beenabled to handle interactions by way of their corresponding electronicdevice 131. According to some embodiments, the second group of agents232 may not even be employees of the contact center operating thecontact center system 100, but instead may operate as independentcontractors for handling overflow interactions. According to someexample embodiments, when routing incoming communications to the secondgroup of agents 232, the contact center system 100 may be configured totransmit a signal or alert to one or more agents of the second group ofagents 232 to alert the agents of the need for agents to handleinteractions. Agents from the second group of agents 232 may thenconnect to the contact center system 100 by way of their correspondingelectronic device 131 to begin receiving interactions. According to someembodiments, agents of the second group of agents 232 may connect to thecontact center system 100 at their own discretion according to theirdesire to receive any incoming communications, and be placed in a queueto have interactions routed to their corresponding electronic device131.

According to some embodiments, a series of guidelines or trainingprocedures and instructions, including information and guidance aboutresponding to incoming communications and handling interactions, may beprovided to the second group of agents 232 such that the second group ofagents 232 may not be required to attend in-person training.

According to some embodiments, interactions or incoming communicationsmay be routed to electronic devices 131 of agents of the second group ofagents 232, and the agents may be compensated according to the volumeand/or quality of handled interactions. According to some embodiments,the quality of the interaction by the agent may be determined based onwhether or not a particular predetermined objective was achieved (e.g.,whether or not a product or service was purchased, whether or not thecustomer's question or complaint was resolved, etc.). Additionally,according to some embodiments, the quality of the interaction by theagent may be determined based on the customer sentiment after theinteraction (e.g., based on a survey question). In some embodiments, inthe context of social media expressions, the quality of the interactionby the agent may also be determined based on the virality of theinteraction, such as the number of other social media users who view,share, interact with, or respond to the interaction. According to someembodiments, the contact center system 100 may assign a numerical valueor score to the agent based on the determined quality of theinteraction. Additionally, in some embodiments, the contact centersystem 100 may be configured to rank agents of the second group ofagents 232, and adjust the relative rankings between the second group ofagents 232 based on the quality of the interactions handled by theagents. The compensation provided to the second group of agents 232 mayalso be adjusted based on the quality of the interactions and/or thenovelty of the agents' communications (e.g., a novel communication maybe compensated more than a copy/paste boilerplate communication).Additionally, according to some embodiments, the number of interactionsrouted to agents of the second group of agents 232 may vary according tothe quality of past interactions and/or the relative rankings betweenthe second group of agents 232.

FIG. 3 is a flow diagram illustrating a process for managing a contactcenter system, according to some example embodiments. The number andorder of the operations illustrated in FIG. 3 may vary according to thedesign of the contact center system 100, and may include additionaloperations or fewer operations. Additionally, the order of theoperations may vary unless otherwise stated or implied. At 300, thecontact center system 100 receives a first incoming communication froman electronic device associated with a customer. The first incomingcommunication may be received on any suitable communication channel(e.g., voice, SMS text, email, social media expression, etc.), and mayinclude a customer question, inquiry, or complaint to be addressed orhandled by an agent of the contact center operating the contact centersystem 100.

At 302, the contact center system 100 determines whether or not theincoming communication should be routed to a contact center agent. Forexample, in some instances, such as certain social media expressions,the contact center system 100 may determine (by using text analyticsand/or an analyzer) that the topic or substance of the incomingcommunication does not give rise to a need to route to an agent. If, at302, the contact center system 100 determines the incoming communicationshould not be routed to an agent, the process may end.

If, however, the contact center system 100 determines, at 302, theincoming communication should be routed to an agent for handling, thecontact center system 100 may proceed, at 304, to determine whether ornot the incoming communication should be routed to an agent from among afirst group of agents (e.g., the first group of agents 230). Dependingon the nature of the incoming communication, such as the topic or thecommunication channel, or the volume of incoming communications, thecontact center system 100 may determine that the incoming communicationshould not be routed to the first group of agents. For example, in someembodiments, the contact center system 100 may route all incomingcommunications in a particular communication channel (e.g., social mediaexpressions), all incoming communications about a particular topic, orall incoming communications received above a predetermined thresholdvolume during a predetermined period of time or duration of time, to asecond group of agents instead of the first group of agents.

If, at 304, the contact center system 100 determines the first incomingcommunication should be routed to an agent from among the first group ofagents, the contact center system 100 may proceed, at 306, to route thefirst incoming communication to a first agent from among the first groupof agents to handle, and the process ends. On the other hand, if, at304, the contact center system 100 determines the first incomingcommunication should not be routed to an agent from among the firstgroup of agents, the contact center system 100 may proceed, at 308, toroute the first incoming communication to a second agent from among thesecond group of agents for handling. The selection of an agent fromamong the second group of agents may be based on agent availability, andalso the relative quality or ranking between the agents of the secondgroup of agents. For example, in some embodiments, a higher volume ofinteractions may be routed to higher quality or higher ranked agents ofthe second group of agents, and a lower volume of interactions may berouted to lower quality or lower ranked agents of the second group ofagents. In some embodiments, a predetermined minimum number orproportion of incoming communications may be routed to all agents of thesecond group of agents in order to enable agents to increase theirrelative quality or ranking.

After the first incoming communication is routed to a second agent fromamong the second group of agents, the contact center system 100 mayproceed, at 310, to monitor the outcome of the interaction and determinethe quality of the agent response or interaction. For example, accordingto some embodiments, the contact center system 100 may monitor theoutcome of the interaction to determine whether or not an expectedoutcome (e.g., the customer purchasing a product or service, a questionor complaint being resolved, etc.) is achieved. In some embodiments, thecontact center system 100 may monitor the outcome of the interaction todetermine the sentiment (e.g., based on text analytics, surveyresponses, tone of voice, etc.) of the customer at the end of or afterthe interaction or after a response communication is transmitted by theagent. Additionally, the contact center system 100 may determine thequality of the agent interaction or response communication based onwhether or not the agent correctly answers the customers' question orinquiry, whether or not the agent was polite and responsive to thecustomers' concerns, whether response communications by the agent werenovel or merely recycled from previous interactions, the amount of timeit took the agent to handle or resolve the interaction, and the like.

At 312, the contact center system 100 may proceed to calculate orattribute a value of the agent interaction or response communicationsbased on the quality of the interaction. For example, in someembodiments, the contact center system 100 may attribute a default valueto each agent interaction or response communication, and then apply amultiplier to increase or decrease the default value depending on thequality of the interaction.

At 314, the contact center system 100 may receive a second incomingcommunication to be routed to an agent from among the second group ofagents and determine whether or not to route the second incomingcommunication to the second agent or a different agent from the secondgroup of agents. For example, in some embodiments, the contact centersystem 100 may periodically (e.g., after a predetermined number ofinteractions or after a predetermined period of time) or continuously(e.g., after each completed interaction) re-rank agents from among thesecond group of agents, and make subsequent routing distributiondecisions according to the relative ranking between the second group ofagents. In some embodiments, depending on the volume of incomingcommunications to be routed to the second group of agents, the contactcenter system 100 may route a higher proportion of incomingcommunications to higher-ranked agents, and a lower proportion ofincoming communications to lower-ranked agents.

At 316, the contact center system 100 may proceed to route the secondincoming communication the second agent or a third agent from among thesecond group of agents depending on the outcome of the operation at 314.

Thus, embodiments of the present invention provide a mechanism to enablecontact centers to leverage freelance or part-time agents to handlecertain communications, for example, when incoming communications exceeda predetermined volume. Rather than overburdening the resources of thecontact center system 100 or allowing an unacceptable number of incomingcommunications to be neglected, the contact center system 100 may enableenlisting the help of a secondary group of agents to assist withhandling interactions, thereby improving the overall efficiency of thecontact center system 100 (by enabling leaner staffing, for example),and the experience of customers engaging with the contact center.

In one embodiment, each of the various servers, controllers, switches,gateways, engines, and/or modules (collectively referred to as servers)in the afore-described figures are implemented via hardware or firmware(e.g. ASIC) as will be appreciated by a person of skill in the art.

In one embodiment, each of the various servers, controllers, engines,and/or modules (collectively referred to as servers) in theafore-described figures may be a process or thread, running on one ormore processors, in one or more computing devices 1500 (e.g., FIG. 4A,FIG. 4B), executing computer program instructions and interacting withother system components for performing the various functionalitiesdescribed herein. The computer program instructions are stored in amemory which may be implemented in a computing device using a standardmemory device, such as, for example, a random access memory (RAM). Thecomputer program instructions may also be stored in other non-transitorycomputer readable media such as, for example, a CD-ROM, flash drive, orthe like. Also, a person of skill in the art should recognize that acomputing device may be implemented via firmware (e.g. anapplication-specific integrated circuit), hardware, or a combination ofsoftware, firmware, and hardware. A person of skill in the art shouldalso recognize that the functionality of various computing devices maybe combined or integrated into a single computing device, or thefunctionality of a particular computing device may be distributed acrossone or more other computing devices without departing from the scope ofthe exemplary embodiments of the present invention. A server may be asoftware module, which may also simply be referred to as a module. Theset of modules in the contact center may include servers, and othermodules.

The various servers may be located on a computing device on-site at thesame physical location as the agents of the contact center or may belocated off-site (or in the cloud) in a geographically differentlocation, e.g., in a remote data center, connected to the contact centervia a network such as the Internet. In addition, some of the servers maybe located in a computing device on-site at the contact center whileothers may be located in a computing device off-site, or serversproviding redundant functionality may be provided both via on-site andoff-site computing devices to provide greater fault tolerance. In someembodiments of the present invention, functionality provided by serverslocated on computing devices off-site may be accessed and provided overa virtual private network (VPN) as if such servers were on-site, or thefunctionality may be provided using a software as a service (SaaS) toprovide functionality over the internet using various protocols, such asby exchanging data using encoded in extensible markup language (XML) orJavaScript Object notation (JSON).

FIG. 4A and FIG. 4B depict block diagrams of a computing device 1500 asmay be employed in exemplary embodiments of the present invention. Eachcomputing device 1500 includes a central processing unit 1521 and a mainmemory unit 1522. As shown in

FIG. 4A, the computing device 1500 may also include a storage device1528, a removable media interface 1516, a network interface 1518, aninput/output (I/O) controller 1523, one or more display devices 1530 c,a keyboard 1530 a and a pointing device 1530 b, such as a mouse. Thestorage device 1528 may include, without limitation, storage for anoperating system and software. As shown in FIG. 4B, each computingdevice 1500 may also include additional optional elements, such as amemory port 1503, a bridge 1570, one or more additional input/outputdevices 1530 d, 1530 e and a cache memory 1540 in communication with thecentral processing unit 1521. The input/output devices 1530 a, 1530 b,1530 d, and 1530 e may collectively be referred to herein usingreference numeral 1530.

The central processing unit 1521 is any logic circuitry that responds toand processes instructions fetched from the main memory unit 1522. Itmay be implemented, for example, in an integrated circuit, in the formof a microprocessor, microcontroller, or graphics processing unit (GPU),or in a field-programmable gate array (FPGA) or application-specificintegrated circuit (ASIC). The main memory unit 1522 may be one or morememory chips capable of storing data and allowing any storage locationto be directly accessed by the central processing unit 1521. As shown inFIG. 4A, the central processing unit 1521 communicates with the mainmemory 1522 via a system bus 1550. As shown in FIG. 4B, the centralprocessing unit 1521 may also communicate directly with the main memory1522 via a memory port 1503.

FIG. 4B depicts an embodiment in which the central processing unit 1521communicates directly with cache memory 1540 via a secondary bus,sometimes referred to as a backside bus. In other embodiments, thecentral processing unit 1521 communicates with the cache memory 1540using the system bus 1550. The cache memory 1540 typically has a fasterresponse time than main memory 1522. As shown in FIG. 4A, the centralprocessing unit 1521 communicates with various I/O devices 1530 via thelocal system bus 1550. Various buses may be used as the local system bus1550, including a Video Electronics Standards Association (VESA) Localbus (VLB), an Industry Standard Architecture (ISA) bus, an ExtendedIndustry Standard Architecture (EISA) bus, a MicroChannel Architecture(MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI Extended(PCI-X) bus, a PCI-Express bus, or a NuBus. For embodiments in which anI/O device is a display device 1530 c, the central processing unit 1521may communicate with the display device 1530 c through an AdvancedGraphics Port (AGP). FIG. 4B depicts an embodiment of a computer 1500 inwhich the central processing unit 1521 communicates directly with I/Odevice 1530 e. FIG. 4B also depicts an embodiment in which local bussesand direct communication are mixed: the central processing unit 1521communicates with I/O device 1530 d using a local system bus 1550 whilecommunicating with I/O device 1530 e directly.

A wide variety of I/O devices 1530 may be present in the computingdevice 1500. Input devices include one or more keyboards 1530 a, mice,trackpads, trackballs, microphones, and drawing tablets. Output devicesinclude video display devices 1530 c, speakers, and printers. An I/Ocontroller 1523, as shown in FIG. 4A, may control the I/O devices. TheI/O controller may control one or more I/O devices such as a keyboard1530 a and a pointing device 1530 b, e.g., a mouse or optical pen.

Referring again to FIG. 4A, the computing device 1500 may support one ormore removable media interfaces 1516, such as a floppy disk drive, aCD-ROM drive, a DVD-ROM drive, tape drives of various formats, a USBport, a Secure Digital or COMPACT FLASH™ memory card port, or any otherdevice suitable for reading data from read-only media, or for readingdata from, or writing data to, read-write media. An I/O device 1530 maybe a bridge between the system bus 1550 and a removable media interface1516.

The removable media interface 1516 may for example be used forinstalling software and programs. The computing device 1500 may furthercomprise a storage device 1528, such as one or more hard disk drives orhard disk drive arrays, for storing an operating system and otherrelated software, and for storing application software programs.Optionally, a removable media interface 1516 may also be used as thestorage device. For example, the operating system and the software maybe run from a bootable medium, for example, a bootable CD.

In some embodiments, the computing device 1500 may comprise or beconnected to multiple display devices 1530 c, which each may be of thesame or different type and/or form. As such, any of the I/O devices 1530and/or the I/O controller 1523 may comprise any type and/or form ofsuitable hardware, software, or combination of hardware and software tosupport, enable or provide for the connection to, and use of, multipledisplay devices 1530 c by the computing device 1500. For example, thecomputing device 1500 may include any type and/or form of video adapter,video card, driver, and/or library to interface, communicate, connect orotherwise use the display devices 1530 c. In one embodiment, a videoadapter may comprise multiple connectors to interface to multipledisplay devices 1530 c. In other embodiments, the computing device 1500may include multiple video adapters, with each video adapter connectedto one or more of the display devices 1530 c. In some embodiments, anyportion of the operating system of the computing device 1500 may beconfigured for using multiple display devices 1530 c. In otherembodiments, one or more of the display devices 1530 c may be providedby one or more other computing devices, connected, for example, to thecomputing device 1500 via a network. These embodiments may include anytype of software designed and constructed to use the display device ofanother computing device as a second display device 1530 c for thecomputing device 1500. One of ordinary skill in the art will recognizeand appreciate the various ways and embodiments that a computing device1500 may be configured to have multiple display devices 1530 c.

A computing device 1500 of the sort depicted in FIG. 4A and FIG. 4B mayoperate under the control of an operating system, which controlsscheduling of tasks and access to system resources. The computing device1500 may be running any operating system, any embedded operating system,any real-time operating system, any open source operating system, anyproprietary operating system, any operating systems for mobile computingdevices, or any other operating system capable of running on thecomputing device and performing the operations described herein.

The computing device 1500 may be any workstation, desktop computer,laptop or notebook computer, server machine, handheld computer, mobiletelephone or other portable telecommunication device, media playingdevice, gaming system, mobile computing device, or any other type and/orform of computing, telecommunications or media device that is capable ofcommunication and that has sufficient processor power and memorycapacity to perform the operations described herein. In someembodiments, the computing device 1500 may have different processors,operating systems, and input devices consistent with the device.

In other embodiments, the computing device 1500 is a mobile device, suchas a Java-enabled cellular telephone or personal digital assistant(PDA), a smart phone, a digital audio player, or a portable mediaplayer. In some embodiments, the computing device 1500 comprises acombination of devices, such as a mobile phone combined with a digitalaudio player or portable media player.

As shown in FIG. 4C, the central processing unit 1521 may comprisemultiple processors P1, P2, P3, P4, and may provide functionality forsimultaneous execution of instructions or for simultaneous execution ofone instruction on more than one piece of data. In some embodiments, thecomputing device 1500 may comprise a parallel processor with one or morecores. In one of these embodiments, the computing device 1500 is ashared memory parallel device, with multiple processors and/or multipleprocessor cores, accessing all available memory as a single globaladdress space. In another of these embodiments, the computing device1500 is a distributed memory parallel device with multiple processorseach accessing local memory only. In still another of these embodiments,the computing device 1500 has both some memory which is shared and somememory which may only be accessed by particular processors or subsets ofprocessors. In still even another of these embodiments, the centralprocessing unit 1521 comprises a multicore microprocessor, whichcombines two or more independent processors into a single package, e.g.,into a single integrated circuit (IC). In one exemplary embodiment,depicted in FIG. 4D, the computing device 1500 includes at least onecentral processing unit 1521 and at least one graphics processing unit1521′.

In some embodiments, a central processing unit 1521 provides singleinstruction, multiple data (SIMD) functionality, e.g., execution of asingle instruction simultaneously on multiple pieces of data. In otherembodiments, several processors in the central processing unit 1521 mayprovide functionality for execution of multiple instructionssimultaneously on multiple pieces of data (MIMD). In still otherembodiments, the central processing unit 1521 may use any combination ofSIMD and MIMD cores in a single device.

A computing device may be one of a plurality of machines connected by anetwork, or it may comprise a plurality of machines so connected. FIG.4E shows an exemplary network environment. The network environmentcomprises one or more local machines 1502 a, 1502 b (also generallyreferred to as local machine(s) 1502, client(s) 1502, client node(s)1502, client machine(s) 1502, client computer(s) 1502, client device(s)1502, endpoint(s) 1502, or endpoint node(s) 1502) in communication withone or more remote machines 1506 a, 1506 b, 1506 c (also generallyreferred to as server machine(s) 1506 or remote machine(s) 1506) via oneor more networks 1504. In some embodiments, a local machine 1502 has thecapacity to function as both a client node seeking access to resourcesprovided by a server machine and as a server machine providing access tohosted resources for other clients 1502 a, 1502 b. Although only twoclients 1502 and three server machines 1506 are illustrated in FIG. 4E,there may, in general, be an arbitrary number of each. The network 1504may be a local-area network (LAN), e.g., a private network such as acompany Intranet, a metropolitan area network (MAN), or a wide areanetwork (WAN), such as the Internet, or another public network, or acombination thereof.

The computing device 1500 may include a network interface 1518 tointerface to the network 1504 through a variety of connectionsincluding, but not limited to, standard telephone lines, local-areanetwork (LAN), or wide area network (WAN) links, broadband connections,wireless connections, or a combination of any or all of the above.Connections may be established using a variety of communicationprotocols. In one embodiment, the computing device 1500 communicateswith other computing devices 1500 via any type and/or form of gateway ortunneling protocol such as Secure Socket Layer (SSL) or Transport LayerSecurity (TLS). The network interface 1518 may comprise a built-innetwork adapter, such as a network interface card, suitable forinterfacing the computing device 1500 to any type of network capable ofcommunication and performing the operations described herein. An I/Odevice 1530 may be a bridge between the system bus 1550 and an externalcommunication bus.

According to one embodiment, the network environment of FIG. 4E may be avirtual network environment where the various components of the networkare virtualized. For example, the various machines 1502 may be virtualmachines implemented as a software-based computer running on a physicalmachine. The virtual machines may share the same operating system. Inother embodiments, different operating system may be run on each virtualmachine instance. According to one embodiment, a “hypervisor” type ofvirtualization is implemented where multiple virtual machines run on thesame host physical machine, each acting as if it has its own dedicatedbox. Of course, the virtual machines may also run on different hostphysical machines.

Other types of virtualization are also contemplated, such as, forexample, the network (e.g. via Software Defined Networking (SDN)).Functions, such as functions of the session border controller and othertypes of functions, may also be virtualized, such as, for example, viaNetwork Functions Virtualization (NFV).

Although this invention has been described in certain specificembodiments, those skilled in the art will have no difficulty devisingvariations to the described embodiment, which in no way depart from thescope and spirit of the present invention. Furthermore, to those skilledin the various arts, the invention itself herein will suggest solutionsto other tasks and adaptations for other applications. It is theapplicant's intention to cover by claims all such uses of the inventionand those changes and modifications which could be made to theembodiments of the invention herein chosen for the purpose of disclosurewithout departing from the spirit and scope of the invention. Thus, thepresent embodiments of the invention should be considered in allrespects as illustrative and not restrictive, the scope of the inventionto be indicated by the appended claims and their equivalents rather thanthe foregoing description.

What is claimed is:
 1. A method for managing a contact center, themethod comprising: receiving, by a processor, a first incomingcommunication from a communication device associated with a customer;determining, by the processor, the first incoming communication shouldnot be routed to any agents from among a first group of agents; routing,by the processor, the first incoming communication to an electronicdevice operated by an agent from among a second group of agents;monitoring, by the processor, an outcome of an interaction between theagent and the customer; determining, by the processor, a quality levelfor the agent in handling the interaction with respect to the firstincoming communication; and routing, by the processor, a second incomingcommunication to the second agent based on the quality level for theagent in handling the interaction with respect to the second incomingcommunication.
 2. The method of claim 1, further comprising determining,by the processor, the first incoming communication should not be routedto the any agents from among the first group of agents in response to atrigger event for routing to the second group of agents.
 3. The methodof claim 2, wherein the trigger event comprises a number of incomingcommunications over a period of time exceeding a predetermined number.4. The method of claim 2, wherein the trigger event comprises agentavailability for the first group of agents falling below a predeterminedlevel.
 5. The method of claim 1, further comprising calculating, by theprocessor, a value of the interaction based on the quality level.
 6. Themethod of claim 5, further comprising determining, by the processor, acompensation amount based on the value of the interaction.
 7. The methodof claim 1, further comprising determining, by the processor, thequality level based on whether or not an expected outcome was achieved.8. The method of claim 1, further comprising determining, by theprocessor, the quality level based on a sentiment of the customer afterthe interaction.
 9. The method of claim 1, further comprisingdetermining, by the processor, the quality level based on a viralitylevel of the interaction.
 10. The method of claim 1, further comprising:ranking, by the processor, the second group of agents based on thequality level for the agent to determine a relative ranking between thesecond group of agents; and routing, by the processor, subsequentincoming interactions to the second group of agents based the relativeranking between the second group of agents.
 11. A system for managing acontact center, the system comprising: a processor; and a memory coupledto the processor, wherein the memory stores instructions that, whenexecuted by the processor, cause the processor to: receive a firstincoming communication from a communication device associated with acustomer; determine the first incoming communication should not berouted to any agents from among a first group of agents; route the firstincoming communication to an electronic device operated by an agent fromamong a second group of agents; monitor an outcome of an interactionbetween the agent and the customer; determine a quality level for theagent in handling the interaction with respect to the first incomingcommunication; and route a second incoming communication to the secondagent based on the quality level for the agent in handling theinteraction with respect to the second incoming communication.
 12. Thesystem of claim 11, wherein the instructions further cause the processorto determine the first incoming communication should not be routed tothe any agents from among the first group of agents in response to atrigger event for routing to the second group of agents.
 13. The systemof claim 12, wherein the trigger event comprises a number of incomingcommunications over a period of time exceeding a predetermined number.14. The system of claim 12, wherein the trigger event comprises agentavailability for the first group of agents falling below a predeterminedlevel.
 15. The system of claim 11, wherein the instructions furthercause the processor to calculate a value of the interaction based on thequality level.
 16. The system of claim 15, wherein the instructionsfurther cause the processor to determine a compensation amount based onthe value of the interaction.
 17. The system of claim 11, wherein theinstructions further cause the processor to determine the quality levelbased on whether or not an expected outcome was achieved.
 18. The systemof claim 11, wherein the instructions further cause the processor todetermine the quality level based on a sentiment of the customer afterthe interaction.
 19. The system of claim 11, wherein the instructionsfurther cause the processor to: rank the second group of agents based onthe quality level for the agent to determine a relative ranking betweenthe second group of agents; and route subsequent incoming interactionsto the second group of agents based the relative ranking between thesecond group of agents.
 20. A system for managing a contact center, thesystem comprising: means for receiving a first incoming communicationfrom a communication device associated with a customer; means fordetermining the first incoming communication should not be routed to anyagents from among a first group of agents; means for routing the firstincoming communication to an electronic device operated by an agent fromamong a second group of agents; means for monitoring an outcome of aninteraction between the agent and the customer; means for determining aquality level for the agent in handling the interaction with respect tothe first incoming communication; and means for routing a secondincoming communication to the second agent based on the quality levelfor the agent in handling the interaction with respect to the secondincoming communication.